package com.xbongbong.saas.domain.entity;

import com.xbongbong.paas.toolbox.util.DateUtil;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

/**
 * @author chenshan
 * @version 1.0
 * @date 2020-08-31
 * @since 钉钉群表
 */
@Setter
@Getter
@ToString
public class DingBundleEntity {
    private static final long serialVersionUID = -8164395867653509756L;
    private Long id;
    private String corpid;
    /**
     * 群编号
     */
    private String openConversationId;
    /**
     * 群名称
     */
    private String title;
    /**
     * 群头像
     *
     * @return
     */
    private String icon;
    /**
     * 群类型,1:销售群,2:客户群;等等后续可拓展'
     * @see com.xbongbong.saas.enums.mini.DingBundleTypeEnum
     */
    private Integer type;
    /**
     * 群主
     */
    private String ownerId;
    /**
     * unionid
     */
    
    private String unionid;
    /**
     * 群主头像
     */
    private String avatar;
    /**
     * 群主名称
     */
    private String name;
    /**
     * 状态,1.正常,2.解散,3.不启用群插件
     * @see com.xbongbong.saas.enums.mini.DingBundleStatusEnum
     */
    private Integer status;
    /**
     * @all 权限  ,0:默认，所有人，1:仅群主可@ all
     */
    private Integer mentionAllAuthority;
    /**
     * 新成员是否可查看聊天历史消息,0-默认， 否，1-是
     */
    private Integer showHistoryType;
    /**
     * 入群验证,0:不入群验证(默认),1: 入群验证
     */
    private Integer validationType;
    /**
     * 群可搜索,0-默认，不可搜索，1-可搜索',
     */
    private Integer searchable;
    /**
     * 群禁言,0:默认，不禁言，1:全员禁言
     */
    private Integer chatBannedType;
    /**
     * 管理类型,0:默认，所有人可管理，1:仅群主可管理
     */
    private Integer managementType;
    /**
     * 新增时间
     */
    private Long addTime;
    /**
     * 更新时间
     */
    private Long updateTime;
    /**
     * 是否删除
     */
    private Integer del;
    
    public DingBundleEntity() {
        long now = DateUtil.getInt();
        status = 1;
        mentionAllAuthority = 0;
        showHistoryType = 1;
        validationType = 0;
        searchable = 0;
        chatBannedType = 0;
        managementType = 1;
        addTime = now;
        updateTime = now;
        del = 0;
    }
}
